package com.databaseconnectionmobilapi.service;

import com.databaseconnectionmobilapi.domain.dto.ChangeUserInfoDTO;
import com.databaseconnectionmobilapi.domain.dto.LoginDTO;
import com.databaseconnectionmobilapi.domain.dto.RegisterDTO;
import com.databaseconnectionmobilapi.domain.entity.UserEntity;
import com.baomidou.mybatisplus.extension.service.IService;
import com.databaseconnectionmobilapi.util.result.RestResult;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author fall
 * @since 2022-01-17
 */
public interface UserService extends IService<UserEntity> {
    /**
     * 登录接口
     * @param loginDto
     * @return
     */
    RestResult login(LoginDTO loginDto);

    /**
     * 注册接口
     * @param registerDTO
     * @return
     */
    RestResult register(RegisterDTO registerDTO);

    /**
     * 登出
     * @param token
     * @return
     */
    RestResult logout(String token);

    /**
     * 查看用户信息
     * @param userId
     * @return
     */
    RestResult selectUserInfo(Integer userId);

    /**
     * 更新用户信息
     * @param token
     * @param changeUserInfoDTO
     * @return
     */
    RestResult changeUserInfo(String token, ChangeUserInfoDTO changeUserInfoDTO);
}
